2 research outputs found

    Breaking the FF3 Format Preserving Encryption

    Get PDF
    The NIST standard FF3 scheme (also known as BPS scheme) is a tweakable block cipher based on a 8-round Feistel Network. We break it with a practical attack. Our attack exploits the bad domain separation in FF3 design. The attack works with chosen plaintexts and tweaks when the message domain is small. Our FF3 attack requires O(N116)O(N^{\frac{11}{6}}) chosen plaintexts with time complexity N5N^{5}, where N2N^2 is domain size to the Feistel Network. Due to the bad domain separation in 8-round FF3, we reduced the FF3 attack to an attack on 4-round Feistel Networks. In our generic attack, we reconstruct the entire codebook of 4-round Feistel Network with N32(N2)16N^{\frac{3}{2}} \left( \frac{N}{2} \right)^{\frac{1}{6}} known plaintexts and time complexity N4N^{4}

    Generic Round-Function-Recovery Attacks for Feistel Networks over Small Domains

    Get PDF
    Feistel Networks (FN) are now being used massively to encrypt credit card numbers through format-preserving encryption. In our work, we focus on FN with two branches, entirely unknown round functions, modular additions (or other group operations), and when the domain size of a branch (called NN) is small. We investigate round-function-recovery attacks. The best known attack so far is an improvement of Meet-In-The-Middle (MITM) attack by Isobe and Shibutani from ASIACRYPT~2013 with optimal data complexity q=rN2q=r \frac{N}{2} and time complexity Nr−42N+o(N)N^{ \frac{r-4}{2}N + o(N)}, where rr is the round number in FN. We construct an algorithm with a surprisingly better complexity when rr is too low, based on partial exhaustive search. When the data complexity varies from the optimal to the one of a codebook attack q=N2q=N^2, our time complexity can reach NO(N1−1r−2)N^{O \left( N^{1-\frac{1}{r-2}} \right) }. It crosses the complexity of the improved MITM for q∼Ne3r2r−3q\sim N\frac{\mathrm{e}^3}{r}2^{r-3}. We also estimate the lowest secure number of rounds depending on NN and the security goal. We show that the format-preserving-encryption schemes FF1 and FF3 standardized by NIST and ANSI cannot offer 128-bit security (as they are supposed to) for N≤11N\leq11 and N≤17N\leq17, respectively (the NIST standard only requires N≥10N \geq 10), and we improve the results by Durak and Vaudenay from CRYPTO~2017
    corecore